Ext.apply(Ext.form.field.VTypes, {
    
    //  vtype validation function
    imagen : function(val, field) {
        var fileName = /^.*\.(jpeg|jpg)$/i;
        return fileName.test(val);
    },
    // vtype Text property to display error Text
    // when the validation function returns false
    imagenText : "Seleccione Archivo JPEG o JPG",
    // vtype Mask property for keystroke filter mask
    imagenMask : /[a-z_\.]/i 
 
});

Ext.apply(Ext.form.field.VTypes, {
    
    //  vtype validation function
    pdf : function(val, field) {
        var fileName = /^.*\.(pdf|PDF)$/i;
        return fileName.test(val);
    },
    // vtype Text property to display error Text
    // when the validation function returns false
    pdfText : "Seleccione Archivo PDF",
    // vtype Mask property for keystroke filter mask
    pdfMask : /[a-z_\.]/i 
 
});

Ext.define('SistIntegral.Componentes.Objetos',{
    //alias			: "FrmEstadoInventario",
    forward			: true,
        

    ObjUbicacion        : function(){

        var TreeStoreAreaP = Ext.create('Ext.data.TreeStore', {
            proxy: {
                type: 'ajax',
                url: 'ubicacion/IndexTree',
                extraParams:{
                    query:""
                }
            },
            root: {
                text: 'Institucional',
                id: '1',
                expanded: true
            },
            folderSort: true,
            sorters: [{
                property: 'text',
                direction: 'ASC'
            }]
        });

        var ObjUbicacion = Ext.create('Ext.form.field.Text', {
            id:'Ubicacion',
            name: 'NomUbicacion',
            width:330,
            allowBlank:false,
            fieldLabel: 'Ubicacion'
        });  

        ObjUbicacion.on('focus', function (text) {

            var TreeArea = Ext.create('Ext.tree.Panel', {
                store: TreeStoreAreaP,
                rootVisible: false,
                viewConfig: {
                    plugins: {
                        ptype: 'treeviewdragdrop'
                    }
                },
                layout:'fit',
                title: 'Ubicacion'//,
            });
    

            var ventanaArea = new Ext.Window({
                id:'WSelArea',
                title:'Seleccionar Area',
                width: 485,
                height: 350,
                layout:'fit',
                autoScroll: true,
                bodyStyle: "padding : 10px;",
                modal: true,
                tbar: [
                {
                    width: 150,
                    emptyText:'Ingrese Area',
                    xtype: 'searchfield',
                    store: TreeStoreAreaP
                }
                ,'->'
                ],
                items: TreeArea
            });
            ventanaArea.show();
        
            TreeArea.on('itemdblclick', function (obj, record) {
                //alert(record.get('id'));
                Ext.getCmp('IdUbicacion').setValue(record.get('id'));
                Ext.getCmp('Ubicacion').setValue(record.get('text'));
        
                ventanaArea.close();
            });
        });
        return ObjUbicacion;
    },
    ComboResponsable   :   function(){
        var StorePersonal = Ext.create('Ext.data.Store', {
            model: 'Personal',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'personal/IndexActivos',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var resultTpl = new Ext.XTemplate(
            '<tpl for="."><div class="x-boundlist-item"><div class="search-item">',
            '<h3><span><img width="55" height="60" src="/Content/RRHH/Fotos/{IdPersonal}.jpg" /><br /></span>{ApeNombre}</h3>',
            'Fotocheck: {Fotocheck}<br>',
            '{Tipodi}:'+' '+'{Nrodi}',
            '</div></div></tpl>'
            );
                
        return CmbPersonal = Ext.create('Ext.form.ComboBox', {
            id:'CmbPersonal',
            name:'IdPersonal',
            emptyText : 'SELECCIONE RESPONSABLE',
            fieldLabel: 'Responsable',
            width:330,
            pageSize : 25,
            store: StorePersonal,
            queryMode: 'remote',
            displayField: 'ApeNombre',
            valueField: 'IdPersonal',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:0,
            tpl:resultTpl,
            itemSelector: 'div.search-item'
        });

    },

    CmbMotivoFinPeriodo:function(){

        var StoreMotivoFinPeriodo = Ext.create('Ext.data.Store', {
            model: 'MotivoFinPeriodo',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'motivofinperiodo/index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return CmbEstadoInventario  = Ext.create('Ext.form.ComboBox', {
            id:'CmbMotivoFinPeriodo',
            fieldLabel: 'Motivo',
            emptyText : ' SELECCIONE MOTIVO',
            name:'IdMotivoFinDePeriodo',
            flex:1,
            pageSize : 25,
            store: StoreMotivoFinPeriodo,
            queryMode: 'remote',
            displayField: 'NomMotivoFinPeriodo',
            valueField: 'IdMotivoFinDePeriodo',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{NomMotivoFinPeriodo}'+'</h3>' +'</a>';
                }
            }
        });
    },
    ComboTipoPagoLiquidacion: function () {

        var StoreMotivoFinPeriodo = Ext.create('Ext.data.Store', {
            model: 'TipoPagoLiquidacion',
            pageSize: 25,
            proxy: {
                type: 'ajax',
                url: 'TipoPagoLiquidacion/index',
                reader: {
                    type: 'json',
                    root: 'Data'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id: 'CmbTipoPagoLiquidacion',
            fieldLabel: 'Tipo Pago',
            emptyText: 'SELECCIONE TIPO PAGO LIQUIDACION',
            name: 'IdTipoPagoLiquidacion',
            flex: 1,
            pageSize: 25,
            store: StoreMotivoFinPeriodo,
            queryMode: 'remote',
            displayField: 'NombreTipoPagoLiquidacion',
            valueField: 'IdTipoPagoLiquidacion',
            autoSelect: false,
            forceSelection: true,
            allowBlank: false,
            minChars: 1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function () {
                    return '<a>' + '<h3></span>{NombreTipoPagoLiquidacion}' + '</h3>' + '</a>';
                }
            }
        });

    },

    ComboEstadoInventario      :   function(){

        var StoreEstadoInventario = Ext.create('Ext.data.Store', {
            model: 'EstadoInventario',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'estadoinventario/index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return CmbEstadoInventario  = Ext.create('Ext.form.ComboBox', {
            id:'CmbEstadoInventario',
            fieldLabel: 'Estado',
            emptyText : ' SELECCIONE ESTADO',
            name:'IdEstadoInventario',
            width:330,
            pageSize : 25,
            store: StoreEstadoInventario,
            queryMode: 'remote',
            displayField: 'NomEstado',
            valueField: 'IdEstadoInventario',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{NomEstado}'+'</h3>' +'</a>';
                }
            }
        });
    },
    CmbSemovienteFrm     :   function(btn){

        var StoreSemoviente = Ext.create('Ext.data.Store', {
            model: 'Semoviente',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'semoviente/IndexFrm/'+btn.record.get('IdProyecto'),
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbSemovienteFrm',
            fieldLabel: 'Semoviente',
            emptyText : ' SELECCIONE SEMOVIENTE',
            name:'IdSemoviente',
            flex:1,
            pageSize : 25,
            store: StoreSemoviente,
            queryMode: 'remote',
            displayField: 'AreteEstablo',
            valueField: 'IdSemoviente',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{AreteEstablo}</br>{AreteMicrochip}'+'</h3>' +'</a>'+
                    '<h4 class="sub1">Categoria: {categoria}</h4>';
                }
            }
        });
    },

    CmbMotivoVenta    :   function(){

        var StoreMotivoVenta = Ext.create('Ext.data.Store', {
            model: 'MotivoVenta',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'motivoventa/Index',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbMotivoVenta',
            fieldLabel: 'Motivo Venta',
            emptyText : '@jefeSELECCIONE MOTIVO VENTA',
            name:'IdMotivoVenta',
            flex:1,
            pageSize : 25,
            store: StoreMotivoVenta,
            queryMode: 'remote',
            displayField: 'NomMotivoVenta',
            valueField: 'IdMotivoVenta',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomMotivoVenta}'+'</h3>' +'</a>';
                }
            }
        });
    },

    CmbEstadoSemoviente      :   function(){

        var StoreEstadoInventario = Ext.create('Ext.data.Store', {
            model: 'EstadoSemoviente',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'estadosemoviente/index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbEstadoSemoviente',
            fieldLabel: 'Estado',
            emptyText : ' SELECCIONE ESTADO',
            name:'IdEstadoSemoviente',
            flex:1,
            pageSize : 25,
            store: StoreEstadoInventario,
            queryMode: 'remote',
            displayField: 'NomEstadoSemoviente',
            valueField: 'IdEstadoSemoviente',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{NomEstadoSemoviente}'+'</h3>' +'</a>';
                }
            }
        });
    },

    CmbPlanContable      :   function(){

        var StorePlanContable = Ext.create('Ext.data.Store', {
            model: 'PlanContable',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'plancontable/IndexAll/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbCtaDepreciacion',
            fieldLabel: 'Plan Contable',
            emptyText : 'SELECCIONE PLAN CONTABLE',
            name:'IdPlan',
            flex:1,
            pageSize : 25,
            store: StorePlanContable,
            queryMode: 'remote',
            displayField: 'NomPlanContable',
            valueField: 'IdPlanContable',
            autoSelect : false,
            forceSelection:true,
            allowBlank : true,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{NomPlanContable}'+'</h3>' +
                    '<h4 class="sub1">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });
    },

    ComboCtaDepreciacion      :   function(){

        var StorePCtaDepreciacion = Ext.create('Ext.data.Store', {
            model: 'PlanContable',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'plancontable/index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbCtaDepreciacion  = Ext.create('Ext.form.ComboBox', {
            id:'CmbCtaDepreciacion ',
            fieldLabel: 'Cta Deprecia',
            emptyText : ' SELECCIONE CTA DEPRECIACION',
            name:'IdPlanDepreciacion',
            width:330,
            pageSize : 25,
            store: StorePCtaDepreciacion,
            queryMode: 'remote',
            displayField: 'Nombre',
            valueField: 'Id',
            autoSelect : false,
            forceSelection:true,
            allowBlank : true,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{Nombre}'+'</h3>' +
                    '<h4 class="cmbdos">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });

        return CmbCtaDepreciacion;
    },

    ComboCPD      :   function(){

        var StoreProyecto = Ext.create('Ext.data.Store', {
            model: 'Proyecto',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'proyecto/IndexCpd/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbProyecto = Ext.create('Ext.form.ComboBox', {
            id:'CmbProyectoCPD',
            fieldLabel: 'CPD',
            emptyText : ' SELECCIONE PROYECTO CPD',
            name:'IdProyectoCPD',
            flex:1,
            pageSize : 25,
            store: StoreProyecto,
            queryMode: 'remote',
            displayField: 'ProyectoCPD',
            valueField: 'IdProyectoCPD',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{ProyectoCPD}'+'</h3>' +
                    '<h4 class="sub1">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });

        return CmbProyecto;
    },

    ComboCPDUbicacion      :   function(){

        var StoreProyecto = Ext.create('Ext.data.Store', {
            model: 'Proyecto',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'proyecto/IndexCpdU/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbCPDUbicacion = Ext.create('Ext.form.ComboBox', {
            id:'CmbCPDUbicacion',
            fieldLabel: 'Ubicacion',
            emptyText : ' SELECCIONE UBICACION',
            name:'IdUbicacion',
            width:330,
            pageSize : 25,
            store: StoreProyecto,
            queryMode: 'remote',
            displayField: 'ProyectoCPDU',
            valueField: 'IdProyectoCPDU',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{ProyectoCPDU}'+'</h3>' +
                    '<h4 class="sub1">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });

        return CmbCPDUbicacion;
    },

    ComboOrigenSemoviente      :   function(){

        var StoreOrigenSemoviente = Ext.create('Ext.data.Store', {
            model: 'OrigenSemoviente',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'origensemoviente/Index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbOrigenSemoviente = Ext.create('Ext.form.ComboBox', {
            id:'CmbOrigenSemoviente',
            fieldLabel: 'Origen',
            emptyText : ' SELECCIONE ORIGEN SEMOVIENTE',
            name:'IdOrigenSemoviente',
            width:330,
            pageSize : 25,
            store: StoreOrigenSemoviente,
            queryMode: 'remote',
            displayField: 'NomOrigenSemoviente',
            valueField: 'IdOrigenSemoviente',
            autoSelect : false,
            forceSelection:true,
            allowBlank : true,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{NomOrigenSemoviente}'+'</h3>' +
                    //'<h4 class="sub1">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });

        return CmbOrigenSemoviente;
    },

    ComboEspecieCatRaza      :   function(){

        var StoreEspecie = Ext.create('Ext.data.Store', {
            model: 'EspecieAnimal',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'especieanimal/Index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var StoreCategoria = Ext.create('Ext.data.Store', {
            model: 'CategoriaAnimal',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'categoriaanimal/Index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var StoreRaza = Ext.create('Ext.data.Store', {
            model: 'RazaAnimal',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'razaanimal/Index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbEspecie = Ext.create('Ext.form.ComboBox', {
            id:'CmbEspecie',
            fieldLabel: 'Especie',
            emptyText : ' SELECCIONE ESPECIE',
            name:'IdEspecie',
            width:330,
            pageSize : 25,
            store: StoreEspecie,
            queryMode: 'remote',
            displayField: 'especie',
            valueField: 'idespecieanimal',
            autoSelect : true,
            forceSelection:true,
            allowBlank : true,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{especie}'+'</h3>' +
                    //'<h4 class="sub1">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });

        var CmbRaza = Ext.create('Ext.form.ComboBox', {
            id:'CmbRaza',
            fieldLabel: 'Raza',
            emptyText : ' SELECCIONE RAZA',
            name:'IdRaza',
            //width:285,
            width:'50%',
            pageSize : 25,
            store: StoreRaza,
            queryMode: 'remote',
            displayField: 'raza',
            valueField: 'idrazaanimal',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{raza}'+'</h3>' +
                    //'<h4 class="sub1">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });

        var CmbCategoria = Ext.create('Ext.form.ComboBox', {
            id:'CmbCategoria',
            fieldLabel: 'Categoria',
            emptyText : ' SELECCIONE CATEGORIA',
            name:'IdCategoria',
            padding:'0 0 0 5',
            //width:285,
            width:'50%',
            pageSize : 25,
            store: StoreCategoria,
            queryMode: 'remote',
            displayField: 'categoria',
            valueField: 'idcategoriaanimal',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{categoria}'+'</h3>' +
                    //'<h4 class="sub1">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });

        CmbEspecie.on('change', function (store,records) {
            //alert(nuevo);
            StoreCategoria.setProxy(
            {
                type: 'ajax',
                url: 'categoriaanimal/index/'+records/*records[0].get('idespecieanimal')*/,
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'
                }
            });
            StoreRaza.setProxy(
            {
                type: 'ajax',
                url: 'razaanimal/index/'+records/*records[0].get('idespecieanimal')*/,
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'
                }
            });
            
            CmbCategoria.reset();
            StoreCategoria.loadPage(1);
        
            CmbRaza.reset();
            StoreRaza.loadPage(1);
        });
    
        return Ext.create('Ext.container.Container', {
            layout: 'vbox',
            padding:'1 0 1 0',
            defaults :{
                margin: '0 5 2 0'
            },
            items: [CmbEspecie,
            {
                xtype: 'container', 
                layout: 'hbox',
                padding:'3 0 0 0',
                width:'100%',
                items:[CmbRaza,CmbCategoria]
            }]
        });

    },

    ComboTrabCatContrato      :   function(btn){

        var StoreCatTrabajador = Ext.create('Ext.data.Store', {
            model: 'CategoriaRRHH',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'categoriarrhh/Index/'+(btn.Seleccion ? btn.Seleccion.get('IdCat'):''),
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var StoreTipoTrabajador = Ext.create('Ext.data.Store', {
            model: 'TipoTrabajador',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'tipotrabajador/Indexconid/'+(btn.Seleccion ? btn.Seleccion.get('IdCat'):''),
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var StoreTipoContrato = Ext.create('Ext.data.Store', {
            model: 'TipoContrato',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'tipocontrato/Indexconid/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbCatTrabajador = Ext.create('Ext.form.ComboBox', {
            id:'CmbCatTrabajador',
            fieldLabel: 'Cat Trabajador',
            emptyText : 'CATEGORIA TRABAJADOR',
            name:'IdCategoria',
            width:'50%'
            ,
            margin:'0 5 0 5',
            pageSize : 25,
            store: StoreCatTrabajador,
            queryMode: 'remote',
            displayField: 'NomCategoriaRRHH',
            valueField: 'IdCategoria',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{NomCategoriaRRHH}'+'</h3>' +
                    //'<h4 class="sub1">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });

        var CmbTipoTrabajador = Ext.create('Ext.form.ComboBox', {
            id:'CmbTipoTrabajador',
            fieldLabel: 'Tipo Trabajador',
            emptyText : 'TIPO TRABAJADOR',
            name:'IdTipoTrabajador',
            //width:285,
            //width:'50%',
            flex:1,
            pageSize : 25,
            store: StoreTipoTrabajador,
            queryMode: 'remote',
            displayField: 'NomTipoTrabajador',
            valueField: 'IdTipoTrabajador',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{NomTipoTrabajador}'+'</h3>' +
                    '<h4 class="cmbCatUno">Cod Sunat: {CodSunatTipoTrab}</h4>' +
                    '</a>';
                }
            }
        });

        var CmbTipoContrato = Ext.create('Ext.form.ComboBox', {
            id:'CmbTipoContrato',
            fieldLabel: 'Tipo Contrato',
            emptyText : 'TIPO CONTRATO',
            name:'IdTipoContrato',
            flex:1,
            //padding:'0 0 0 5',
            //width:285,
            //width:'50%',
            pageSize : 25,
            store: StoreTipoContrato,
            queryMode: 'remote',
            displayField: 'NomTipoContrato',
            valueField: 'IdTipoContrato',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{NomTipoContrato}'+'</h3>' +
                    '<h4 class="cmbCatUno">Cod Sunat: {CodSunatTipoContrato}</h4>' +
                    '</a>';
                }
            }
        });

        //    CmbCatTrabajador.on('change', function (store,nuevo) {
        //        //alert(nuevo);
        //        StoreTipoTrabajador.setProxy(
        //            {   type: 'ajax',url: 'tipotrabajador/Indexconid/'+nuevo,
        //                reader: {type: 'json',root: 'grid',totalProperty: 'total'}
        //            });
        //        StoreTipoContrato.setProxy(
        //            {   type: 'ajax',url: 'tipocontrato/Indexconid/'+nuevo,
        //                reader: {type: 'json',root: 'grid',totalProperty: 'total'}
        //            });
        //            
        //        CmbTipoTrabajador.reset();
        //        StoreTipoTrabajador.loadPage(1);
        //        
        //        CmbTipoContrato.reset();
        //        StoreTipoContrato.loadPage(1);
        //    });
    
        CmbCatTrabajador.on('select', function (store,records) {
            //alert(nuevo);
            StoreTipoTrabajador.setProxy(
            {
                type: 'ajax',
                url: 'tipotrabajador/Indexconid/'+records[0].get('IdCategoria'),
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'
                }
            });
            StoreTipoContrato.setProxy(
            {
                type: 'ajax',
                url: 'tipocontrato/Indexconid/'+records[0].get('IdCategoria'),
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'
                }
            });
            
            CmbTipoTrabajador.reset();
            StoreTipoTrabajador.loadPage(1);
        
            CmbTipoContrato.reset();
            StoreTipoContrato.loadPage(1);
        });
    
        return Ext.create('Ext.container.Container', {
            layout: 'vbox',
            padding:'0 0 0 0',
            defaults :{
                margin: '0 0 0 0'
            },
            items: [CmbCatTrabajador,
            {
                xtype: 'container', 
                layout: 'hbox',
                padding:'5 0 0 0',
                width:'100%',
                items:[CmbTipoTrabajador,CmbTipoContrato]
            }]
        });

    },

    ComboProyecto      :   function(btn){

        var StoreProyecto = Ext.create('Ext.data.Store', {
            model: 'Proyecto',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'proyecto/index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbProyecto = Ext.create('Ext.form.ComboBox', {
            id:'CmbProyecto',
            fieldLabel: (btn.NomComboProyecto ? btn.NomComboProyecto:'Proyecto'),
            emptyText : ' SELECCIONE PROYECTO',
            name:'IdProyecto',
            flex:1,
            pageSize : 25,
            store: StoreProyecto,
            queryMode: 'remote',
            displayField: 'Proyecto',
            valueField: 'IdProyecto',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{Proyecto}'+'</h3>' +
                    '<h4 class="sub1">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });

        return CmbProyecto;
    },

    ComboCCostoProyecto      :   function(){

        var StoreProyecto = Ext.create('Ext.data.Store', {
            model: 'Proyecto',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'proyecto/index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var StoreCCosto = Ext.create('Ext.data.Store', {
            model: 'CCosto',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'ccosto/index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbProyecto = Ext.create('Ext.form.ComboBox', {
            id:'CmbProyecto',
            fieldLabel: 'Proyecto',
            emptyText : ' SELECCIONE PROYECTO',
            name:'IdProyecto',
            width:330,
            pageSize : 25,
            store: StoreProyecto,
            queryMode: 'remote',
            displayField: 'Proyecto',
            valueField: 'IdProyecto',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            //value:{Id:4},
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{Proyecto}'+'</h3>' +
                    '<h4 class="cmbdos">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });

        var CmbCCosto = Ext.create('Ext.form.ComboBox', {
            id:'CmbCCosto',
            fieldLabel: 'C Costo',
            emptyText : ' SELECCIONE CENTRO COSTO',
            name:'IdCCosto',
            width:330,
            pageSize : 25,
            store: StoreCCosto,
            queryMode: 'remote',
            displayField: 'Ccosto',
            valueField: 'IdCCosto',
            autoSelect : false,
            forceSelection:true,
            allowBlank : true,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{Ccosto}'+'</h3>' +
                    '<h4 class="cmbdos">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });

        CmbProyecto.on('select', function (store,records) {
            //alert(nuevo);
            StoreCCosto.setProxy(
            {
                type: 'ajax',
                url: 'ccosto/index/'+records[0].get('IdProyecto'),
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'
                }
            });

            CmbCCosto.reset();
            StoreCCosto.load();
        });
        return Ext.create('Ext.container.Container', {
            layout: 'hbox',
            padding:'1 0 1 0',
            defaults :{
                margin: '0 5 2 0'
            },
            items: [CmbProyecto,CmbCCosto]
        });
    },

    ComboSemPadreMadre      :   function(){

        var StorePadre = Ext.create('Ext.data.Store', {
            model: 'Semoviente',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'semoviente/IndexPadre/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var StoreMadre = Ext.create('Ext.data.Store', {
            model: 'Semoviente',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'semoviente/IndexMadre/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbPadre = Ext.create('Ext.form.ComboBox', {
            id:'CmbPadre',
            fieldLabel: 'Padre',
            emptyText : ' SELECCIONE PADRE',
            name:'IdSemovientePadre',
            width:'49%',
            pageSize : 25,
            store: StorePadre,
            queryMode: 'remote',
            displayField: 'AretePadre',
            valueField: 'IdSemovientePadre',
            autoSelect : false,
            forceSelection:true,
            allowBlank : true,
            //value:{Id:4},
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{AretePadre}'+'</h3>' +
                    '<h4 class="cmbdos">Nombre: {NombrePadre}</h4>' +
                    '</a>';
                }
            }
        });

        var CmbMadre = Ext.create('Ext.form.ComboBox', {
            id:'CmbMadre',
            fieldLabel: 'Madre',
            emptyText : ' SELECCIONE MADRE',
            name:'IdSemovienteMadre',
            width:'49%',
            pageSize : 25,
            store: StoreMadre,
            queryMode: 'remote',
            displayField: 'AreteMadre',
            valueField: 'IdSemovienteMadre',
            autoSelect : false,
            forceSelection:true,
            allowBlank : true,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{AreteMadre}'+'</h3>' +
                    '<h4 class="cmbdos">Nombre: {NombreMadre}</h4>' +
                    '</a>';
                }
            }
        });

        return Ext.create('Ext.container.Container', {
            layout: 'hbox',
            width:'100%',
            padding:'1 0 1 0',
            defaults :{
                margin: '0 5 2 0'
            },
            items: [CmbPadre,CmbMadre]
        });
    },

    CalculoPorcentaje: function(p){

        var porcentaje = Ext.create('Ext.form.field.Number', {

            id:'nporcentaje',
            name:'porcentaje',
            width:330,
            enableKeyEvents :true,
            fieldLabel: 'Porcentaje',
            allowBlank : false,
            //value: p.porcentaje ||"",
            minValue: 0,
            maxValue : 100,
            blankText :'Campo Porcentaje Obligatorio',
            editable :true,
            anchor: '100%'
        });

        var valor = Ext.create('Ext.form.field.Number', {
            fieldLabel: 'Valor',
            id:'nvalor',
            name:'valor',
            width:330,
            enableKeyEvents :true,
            allowBlank : false,
            //value: p.valor ||"",
            minValue: 0,
            blankText :'Campo Valor Obligatorio',
            editable :true,
            anchor: '100%'
        });

        Ext.getCmp('nporcentaje').on('keyup',function(valor){
            var valorx = p.sueldo*valor.getValue()/100;
            Ext.getCmp('nvalor').setValue(valorx);
        });

        Ext.getCmp('nvalor').on('keyup',function(valor){
            var valorx = (valor.getValue()/p.sueldo)*100;
            Ext.getCmp('nporcentaje').setValue(valorx);
        });
        return Ext.create('Ext.container.Container', {
            layout: 'hbox',
            padding:'1 0 1 0',
            defaults :{
                margin: '0 5 2 0'
            },
            items: [porcentaje,valor]
        });
    },

    ComboCatalogo     :   function(){

        var StoreCatalogo = Ext.create('Ext.data.Store', {
            model: 'Catalogo',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'catalogo/index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbCatalogo = Ext.create('Ext.form.ComboBox', {
            id:'CmbCatalogo',
            fieldLabel: 'Producto',
            emptyText : ' SELECCIONE DEL CATALOGO',
            name:'IdCatalogo',
            width:330,
            pageSize : 25,
            store: StoreCatalogo,
            queryMode: 'remote',
            displayField: 'Catalogo',
            valueField: 'IdCatalogo',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{Catalogo}'+'</h3>' +
                    '<h4 class="cmbdos">{Clasificacion}</h4>' +
                    '<h4 class="cmbdos">{PlanContable}</h4>' +
                    '</a>';
                }
            }
        });

        return CmbCatalogo;
    },

    ComboProveedor     :   function(btn){

        var StoreProveedor = Ext.create('Ext.data.Store', {
            model: 'ProveedorCliente',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'proveedorcliente/index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbProveedor',
            fieldLabel: (btn ?btn.FLCmbProveedor:'Proveedor'),
            emptyText : ' SELECCIONE '+(btn ? (btn.FLCmbProveedor).toUpperCase():'PROVEEDOR'),
            name:'IdProveedorCliente',
            width:330,
            pageSize : 25,
            store: StoreProveedor,
            queryMode: 'remote',
            displayField: 'RazonSocial',
            valueField: 'IdProveedorCliente',
            autoSelect : false,
            forceSelection:true,
            allowBlank : (btn ? (btn.FLCmbProveedor == "Cliente" ? false:true ):true),
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{RazonSocial}'+'</h3>' +
                    '<h4 class="cmbdos">{RUC}</h4>' +
                    '</a>';
                }
            }
        });
    },
    GenerarAnios: function(){
        var generateData = (function() {
            var data = [], i,
            date = new Date(2001, 1, 1),
            dateFin = new Date();

            return function() {
                data = data.slice();

                for (i=date.getFullYear(); i<=dateFin.getFullYear(); i++)
                {
                    data.push({
                        IdEjercicio:  i,
                        Ejercicio: i
                    });
                }
        
                return data;
            };
        })();
        return generateData();
    },
    ComboAnio     :   function(){

        var generateData = (function() {
            var data = [], i,
            date = new Date(2001, 1, 1),
            dateFin = new Date();

            return function() {
                data = data.slice();

                for (i=date.getFullYear(); i<=dateFin.getFullYear(); i++)
                {
                    data.push({
                        IdEjercicio:  i,
                        Ejercicio: i
                    });
                }
        
                return data;
            };
        })();

        var StoreAnio = Ext.create('Ext.data.JsonStore', {
            model: 'Anio',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'ejercicio/GeneraAnios',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });
    

        var CmbAnio = Ext.create('Ext.form.ComboBox', {
            id:'CmbAnio',
            fieldLabel: 'A&ntildeo',
            emptyText : ' SELECCIONE EJERCICIO',
            name:'Ejercicio',
            width:330,
            store: StoreAnio,
            queryMode: 'remote',
            displayField: 'Ejercicio',
            valueField: 'IdEjercicio',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{Ejercicio}'+'</h3>' +'</a>';
                }
            }
        });

        return CmbAnio;
    },

    ComboMes     :   function(){

        var StoreMes = Ext.create('Ext.data.Store', {   
            model: 'Mes',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'ejercicio/GeneraMeses',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }

        });

        var CmbMes= Ext.create('Ext.form.ComboBox', {
            id:'CmbMes',
            fieldLabel: 'Mes',
            emptyText : ' SELECCIONE MES',
            name:'Mes',
            width:330,
            store: StoreMes,
            queryMode: 'remote',
            displayField: 'Mes',
            valueField: 'IdMes',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{Mes}'+'</h3>' +'</a>';
                }
            }
        });

        return CmbMes;
    },
    CmbTipoDocumentoVenta     :   function(){

        var StoreTipoDocumento = Ext.create('Ext.data.Store', {
            model: 'TipoDocumento',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'tipodocumento/venta/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbTipoDocumentoVenta',
            fieldLabel: 'Tipo Doc',
            emptyText : ' SELECCIONE TIPO DOCUMENTO',
            name:'IdTipoDocumento',
            width:330,
            pageSize : 25,
            store: StoreTipoDocumento,
            queryMode: 'remote',
            displayField: 'NomTipoDocumento',
            valueField: 'IdTipoDocumento',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{NomTipoDocumento}'+'</h3>' +
                    '<h4 class="cmbdos">{Codigo}</h4>' +'</a>';
                }
            }
        });
    },

    ComboTipoDocumento     :   function(){

        var StoreTipoDocumento = Ext.create('Ext.data.Store', {
            model: 'TipoDocumento',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'tipodocumento/index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbTipoDocumento = Ext.create('Ext.form.ComboBox', {
            id:'CmbTipoDocumento',
            fieldLabel: 'Tipo Doc',
            emptyText : ' SELECCIONE TIPO DOCUMENTO',
            name:'IdTipoDocumento',
            width:330,
            pageSize : 25,
            store: StoreTipoDocumento,
            queryMode: 'remote',
            displayField: 'NomTipoDocumento',
            valueField: 'IdTipoDocumento',
            autoSelect : false,
            forceSelection:true,
            allowBlank : true,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{NomTipoDocumento}'+'</h3>' +
                    '<h4 class="cmbdos">{Codigo}</h4>' +'</a>';
                }
            }
        });
        return CmbTipoDocumento;
    },
    ComboMarca     :   function(){

        var StoreMarca = Ext.create('Ext.data.Store', {
            model: 'Marca',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'marca/index/',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbMarca = Ext.create('Ext.form.ComboBox', {
            id:'CmbMarca',
            fieldLabel: 'Marca',
            emptyText : ' SELECCIONE MARCA',
            name:'IdMarca',
            width:330,
            pageSize : 25,
            store: StoreMarca,
            queryMode: 'remote',
            displayField: 'NomMarca',
            valueField: 'IdMarca',
            autoSelect : false,
            forceSelection:true,
            allowBlank : true,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{NomMarca}'+'</h3>' +'</a>';
                }
            }
        });
        return CmbMarca;
    },

    ComboNacionalidad      :   function(){

        var StoreNacionalidad = Ext.create('Ext.data.Store', {
            model: 'Nacionalidad',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'nacionalidad/index',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbNacionalidad',
            fieldLabel: 'Nacionalidad',
            emptyText : 'NACIONALIDAD',
            name:'IdNacionalidad',
            flex:1,
            pageSize : 25,
            store: StoreNacionalidad,
            queryMode: 'remote',
            displayField: 'Nacionalidad',
            valueField: 'IdNacionalidad',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{Nacionalidad}'+'</h3>' +
                    '<h4 class="cmbCatUno">Cod Sunat: {CodSunat}</h4>' +
                    '</a>';
                }
            }
        });

    },

    ComboTipoDI     :   function(){

        var StoreTipoDI = Ext.create('Ext.data.Store', {
            model: 'TipoDocumentoIdentidad',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'tipodocident/index',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'ComboTipoDI',
            fieldLabel: 'Tipo Doc Ident',
            emptyText : 'TIPO DOCUMENTO IDENTIDAD',
            name:'IdTipoDI',
            flex:1,
            pageSize : 25,
            store: StoreTipoDI,
            queryMode: 'remote',
            displayField: 'Descripcion',
            valueField: 'IdTipoDI',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{Descripcion}'+'</h3>' +
                    '<h4 class="cmbCatUno">Cod Sunat: {CodSunat}</h4>' +
                    '</a>';
                }
            }
        });
    },

    ComboSexo     :   function(){

        var StoreSexo = Ext.create('Ext.data.Store', {
            model: 'Sexo',
            data:[{
                "IdSexo":"1",
                "Sexo":"M",
                "NomSexo":"MASCULINO"
            },

            {
                "IdSexo":"2",
                "Sexo":"F",
                "NomSexo":"FEMENINO"
            }]
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'ComboSexo',
            fieldLabel: 'Sexo',
            emptyText : 'SEXO',
            name:'Sexo',
            width:330,
            store: StoreSexo,
            queryMode: 'local',
            displayField: 'NomSexo',
            valueField: 'Sexo',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomSexo}'+'</h3>' +'</a>';
                }
            }
        });
    },


    ComboSeguro    :   function(){

        var StoreSeguro = Ext.create('Ext.data.Store', {
            model: 'Seguro',
            data:[{
                "IdSeguro":"1",
                "Seguro":"EPS",
                "NomSeguro":"EPS"
            },

            {
                "IdSeguro":"2",
                "Seguro":"ESSALUD",
                "NomSeguro":"ESSALUD"
            }]
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'ComboSeguro',
            fieldLabel: 'Seguro',
            emptyText : 'Seguro',
            name:'Seguro',
            width:330,
            store: StoreSeguro,
            queryMode: 'local',
            displayField: 'NomSeguro',
            valueField: 'Seguro',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomSeguro}'+'</h3>' +'</a>';
                }
            }
        });
    },


    ComboEstadoCivil    :   function(){

        var StoreEstadoCivil = Ext.create('Ext.data.Store', {
            model: 'EstadoCivil',
            data:[{
                "IdEstadoCivil":"1",
                "EstadoCivil":"SOLTERO(A)"
            },

            {
                "IdEstadoCivil":"2",
                "EstadoCivil":"CASADO(A)"
            },

            {
                "IdEstadoCivil":"3",
                "EstadoCivil":"CONVIVIENTE"
            }]
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbEstadoCivil',
            fieldLabel: 'Estado Civil',
            emptyText : 'ESTADO CIVIL',
            name:'EstadoCivil',
            width:330,
            flex: 1,
            store: StoreEstadoCivil,
            queryMode: 'local',
            displayField: 'EstadoCivil',
            valueField: 'EstadoCivil',
            autoSelect : false,
            forceSelection:false,
            allowBlank : false
        });
    },


    ComboPeriodoLaboral     :   function(){

        var StoreSexo = Ext.create('Ext.data.Store', {
            model: 'Sexo',
            data:[{
                "IdSexo":"1",
                "PeriodoLaboral":"M",
                "NomSexo":"ACTIVO"
            },

            {
                "IdSexo":"2",
                "PeriodoLaboral":"F",
                "NomSexo":"INACTIVO"
            }]
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'cmbPeriodoLaboral',
            emptyText : 'PERIODO LABORAL',
            width:330,
            store: StoreSexo,
            queryMode: 'local',
            displayField: 'NomSexo',
            valueField: 'PeriodoLaboral', //hace referencia ha dentro de data [data:[]]
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomSexo}'+'</h3>' +'</a>';
                }
            }
        });
    },


    ComboDiscapacidad    :   function(){

        var StoreDiscapacidad = Ext.create('Ext.data.Store', {
            model: 'SiNo',
            data:[{
                "Id":"0",
                "VF":"false",
                "Texto":"NO"
            },

            {
                "Id":"1",
                "VF":"true",
                "Texto":"SI"
            }]
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbDiscapacidad',
            fieldLabel: 'Discapacidad',
            emptyText : 'DISCAPACIDAD',
            name:'Discapacidad',
            flex:1,
            store: StoreDiscapacidad,
            queryMode: 'local',
            displayField: 'Texto',
            valueField: 'VF',
            autoSelect : false,
            //forceSelection:true,
            allowBlank : false,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{Texto}'+'</h3>' +'</a>';
                }
            }
        });
    },

    ComboEstudiante: function () {

        var StoreEstudiante = Ext.create('Ext.data.Store', {
            model: 'SiNo',
            data: [{
                "Id": "0",
                "VF": "false",
                "Texto": "NO"
            },{
                "Id": "1",
                "VF": "true",
                "Texto": "SI"
            }]
        });

        return Ext.create('Ext.form.ComboBox', {
            id: 'CmbEstudiante',
            fieldLabel: 'Estudiante',
            emptyText: 'ESTUDIANTE',
            name: 'Estudiando',
            flex: 1,
            store: StoreEstudiante,
            queryMode: 'local',
            displayField: 'Texto',
            valueField: 'VF',
            autoSelect: false,
            //forceSelection:true,
            allowBlank: false,
        });
    },
    ComboEstadoEsSalud: function () {

        var StoreEstadoEsSalud = Ext.create('Ext.data.Store', {
            model: 'EstadoEsSalud',
            data: [{
                "IdEstadoEsSalud": "0",
                "NomEstadoEsSalud": "BAJA"
            },{
                "IdEstadoEsSalud": "1",
                "NomEstadoEsSalud": "ACTIVO EN ESSALUD"
            },{
                "IdEstadoEsSalud": "2",
                "NomEstadoEsSalud": "NO REGISTRADO EN ESSALUD"
            }]
        });

        return Ext.create('Ext.form.ComboBox', {
            id: 'CmbEstadoEsSalud',
            fieldLabel: 'Estado',
            emptyText: 'ESSALUD',
            name: 'Estado',
            flex: 1,
            store: StoreEstadoEsSalud,
            queryMode: 'local',
            displayField: 'NomEstadoEsSalud',
            valueField: 'IdEstadoEsSalud',
            autoSelect: false,
            //forceSelection:true,
            allowBlank: false,
        });
    },
    ComboBanco    :   function(){

        var StoreBanco = Ext.create('Ext.data.Store', {
            model: 'Banco',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'banco/Index',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbBancoCTS',
            fieldLabel: 'Banco',
            emptyText : 'SELECCIONE BANCO',
            name:'IdBanco',
            flex:1,
            store: StoreBanco,
            queryMode: 'remote',
            displayField: 'NomBanco',
            valueField: 'IdBanco',
            autoSelect : false,
            //forceSelection:true,
            allowBlank : true,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomBanco}'+'</h3>' +'</a>';
                }
            }
        });
    },

    ComboBancoCTS    :   function(){

        var StoreBancoCTS = Ext.create('Ext.data.Store', {
            model: 'BancoCTS',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'banco/IndexCTS',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbBancoCTS',
            fieldLabel: 'Banco CTS',
            emptyText : 'BANCO CTA CTS',
            name:'IdBancoCTS',
            width:330,
            store: StoreBancoCTS,
            queryMode: 'remote',
            displayField: 'BancoCTS',
            valueField: 'IdBancoCTS',
            autoSelect : false,
            //forceSelection:true,
            allowBlank : true,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{BancoCTS}'+'</h3>' +'</a>';
                }
            }
        });
    },

    ComboBancoHaberes    :   function(){

        var StoreBancoHaberes = Ext.create('Ext.data.Store', {
            model: 'BancoHaberes',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'banco/IndexHaberes',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbBancoHaberes',
            //submitEmptyText:false,
            fieldLabel: 'Banco Haberes',
            emptyText : 'BANCO CTA HABERES',
            name:'IdBancoHaberes',
            width:330,
            store: StoreBancoHaberes,
            queryMode: 'remote',
            displayField: 'BancoHaberes',
            valueField: 'IdBancoHaberes',
            autoSelect : false,
            forceSelection:true,
            allowBlank : true,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{BancoHaberes}'+'</h3>' +'</a>';
                }
            }
        });
    },

    ComboGrupoOcupacional     :   function(){

        var StoreGrupoOcupacional = Ext.create('Ext.data.Store', {
            model: 'GrupoOcupacional',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'grupoocupacional/index',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbGrupoOcupacional',
            fieldLabel: 'G. Ocupacional',
            emptyText : 'GRUPO OCUPACIONAL',
            name:'IdGrupoOcupacional',
            flex:1,
            pageSize : 25,
            store: StoreGrupoOcupacional,
            queryMode: 'remote',
            displayField: 'NomGrupoOcupacional',
            valueField: 'IdGrupoOcupacional',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomGrupoOcupacional}'+'</h3>' +
                    '<h4 class="sub1">Cod Sunat: {CodSunatGrupoOcupacional}</h4>' +
                    '</a>';
                }
            }
        }); 
    },

    ComboNivelEducativo     :   function(){

        var StoreNivelEducativo = Ext.create('Ext.data.Store', {
            model: 'NivelEducativo',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'niveleducativo/index',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbNivelEducativo',
            fieldLabel: 'Nivel Educativo',
            emptyText : 'NIVEL EDUCATIVO',
            name:'IdNivelEducativo',
            flex:1,
            pageSize : 25,
            store: StoreNivelEducativo,
            queryMode: 'remote',
            displayField: 'NomNivelEducativo',
            valueField: 'IdNivelEducativo',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomNivelEducativo}'+'</h3>' +
                    '<h4 class="cmbCatUno">Cod Sunat: {CodSunatNivelEducativo}</h4>' +
                    '</a>';
                }
            }
        }); 
    },

    ComboHorario     :   function(){

        var StoreHorario = Ext.create('Ext.data.Store', {
            model: 'Horario',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'horario/index',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbHorario',
            fieldLabel: 'Horario',
            emptyText : 'HORARIO',
            name:'IdHorario',
            flex:1,
            pageSize : 25,
            store: StoreHorario,
            queryMode: 'remote',
            displayField: 'NomHorario',
            valueField: 'IdHorario',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomHorario}'+'</h3>' +
                    '<h4 class="cmbCatUno">Ciclo: {CicloHorario}</h4>' +
                    '</a>';
                }
            }
        }); 
    },

    ComboTipoPagoPlanilla     :   function(){

        var StoreTipoPagoPlanilla = Ext.create('Ext.data.Store', {
            model: 'TipoPagoPlanilla',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'tipopagoplanilla/Index',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbTipoPagoPlanilla',
            fieldLabel: 'Tipo Pago',
            emptyText : 'TIPO DE PAGO',
            name:'tipopago',
            flex:1,
            pageSize : 25,
            store: StoreTipoPagoPlanilla,
            queryMode: 'remote',
            displayField: 'NomTipoPagoPlanilla',
            valueField: 'IdTipoPagoPlanilla',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomTipoPagoPlanilla}'+'</h3>' +'</a>';
                }
            }
        }); 
    },

    ComboPeriodicidadIngreso :   function(){

        var StorePeriodicidadIngreso  = Ext.create('Ext.data.Store', {
            model: 'PeriodicidadIngreso',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'periodicidadingreso/Index',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbPeriodicidadIngreso',
            fieldLabel: 'Periodic. Ingreso',
            emptyText : 'PERIODICIDAD INGRESO',
            name:'periodicidadingreso',
            flex:1,
            pageSize : 25,
            store: StorePeriodicidadIngreso,
            queryMode: 'remote',
            displayField: 'NomPeriodicidadIngreso',
            valueField: 'IdPeriodicidadIngreso',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomPeriodicidadIngreso}'+'</h3>' +'</a>';
                }
            }
        }); 
    },
    ComboJefeInmediato      :   function(btn){

        var StoreCargo = Ext.create('Ext.data.Store', {
            model: 'JefeInmediato',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'posicion/IndexJefeInmediato/'+btn.IdArea,
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbJefeInmediato',
            fieldLabel: 'Jefe Inmediato',
            emptyText : 'SELECCIONE JEFE INMEDIATO',
            name:'JefeInmediato',
            flex:1,
            pageSize : 25,
            store: StoreCargo,
            queryMode: 'remote',
            displayField: 'NomCargoJefeInmediato',
            valueField: 'IdPosicionJefeInmediato',
            autoSelect : false,
            forceSelection:true,
            allowBlank : true,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomCargoJefeInmediato}'+'</h3>' +'</a>';
                }
            }
        });

    },

    ComboSistemaPension : function (enabled){
        var StoreSistemaPension = Ext.create('Ext.data.Store', {
            model: 'SistemaPension',
            pageSize:15,
            proxy: {
                type: 'ajax',
                url: 'sistemapension/index',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });
  
            
        return Ext.create('Ext.form.ComboBox', {
            store: StoreSistemaPension,
            enableKeyEvents:true,
            fieldLabel: 'Sistema de Pension',
            id:'Combosistemapensionx',
            name:'IdSistemaPensiones',
            displayField: 'Descripcion',
            minChars:1,
            allowBlank : false,
            forceSelection : true,
            disabled: enabled,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'IdSistemaPensiones',
            emptyText : 'SELECCIONE SISTEMA DE PENSIONES',
            anchor: '100%',
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{Descripcion}'+'</h3>' +
                    '<h4 class="nombrecorto">{Nombre}</h4>' +
                    '</a>';
                }
            },
            pageSize: 15
        });
    },

    ComboTipoAfiliacion     :   function(){

        var StoreCargo = Ext.create('Ext.data.Store', {
            model: 'Tipoafiliacion',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'tipoafiliacion/Index2',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbTipoafiliacion',
            fieldLabel: 'Tipo de Afiliacion',
            emptyText : 'SELECCIONE TIPO DE AFILIACION',
            name:'IdTipoAfiliacion',
            flex:1,
            pageSize : 25,
            store: StoreCargo,
            queryMode: 'remote',
            displayField: 'NomTipoAfiliacion',
            valueField: 'IdTipoAfiliacion',
            autoSelect : false,
            forceSelection:true,
            allowBlank : true,
            anchor: '100%',
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomTipoAfiliacion}'+'</h3>' +'</a>';
                }
            }
        });

    },


    ComboEstado    :   function( enabled){

        var StoreEstado = Ext.create('Ext.data.Store', {
            model: 'Estado',
            data:[{
                "IdEstado":"true",
                "Estado":"Activo"
            },

            {
                "IdEstado":"false",
                "Estado":"Inactivo"
            }]
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbEstado',
            fieldLabel: 'Estado',
            emptyText : 'SELECCIONE ESTADO',
            name:'Estado',
            width:330,
            store: StoreEstado,
            queryMode: 'local',
            disabled: enabled,
            displayField: 'Estado',
            valueField: 'IdEstado',
            autoSelect : false,
            forceSelection:true,
            anchor: '70%',
            allowBlank : false,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{Estado}'+'</h3>' +'</a>';
                }
            }
        });
    },
    ComboCargo      :   function(){

        var StoreCargo = Ext.create('Ext.data.Store', {
            model: 'Cargo',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'cargo/Index',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id:'CmbCargo',
            fieldLabel: 'Cargo',
            emptyText : 'SELECCIONE CARGO',
            name:'IdCargo',
            flex:1,
            pageSize : 25,
            store: StoreCargo,
            queryMode: 'remote',
            displayField: 'NomCargo',
            valueField: 'IdCargo',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomCargo}'+'</h3>' +'</a>';
                }
            }
        });

    },
    ComboAreaPosicion      :   function(){

        var StoreArea = Ext.create('Ext.data.Store', {
            model: 'Area',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'area/index',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var StorePosicion = Ext.create('Ext.data.Store', {
            model: 'Posicion',
            pageSize:25,
            proxy: {
                type: 'ajax',
                url: 'posicion/IndexConId',
                reader: {
                    type: 'json',
                    root: 'grid'
                }
            }
        });

        var CmbArea = Ext.create('Ext.form.ComboBox', {
            id:'CmbArea',
            fieldLabel: 'Area',
            emptyText : 'AREA',
            name:'IdArea',
            flex:1,
            pageSize : 25,
            store: StoreArea,
            queryMode: 'remote',
            displayField: 'NomArea',
            valueField: 'IdArea',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomArea}'+'</h3>' +'</a>';
                }
            }
        });

        var CmbPosicion = Ext.create('Ext.form.ComboBox', {
            id:'CmbPosicion',
            fieldLabel: 'Cargo',
            emptyText : 'CARGO',
            name:'IdPosicion',
            flex:1,
            pageSize : 25,
            store: StorePosicion,
            queryMode: 'remote',
            displayField: 'NomCargo',
            valueField: 'IdPosicion',
            autoSelect : false,
            forceSelection:true,
            allowBlank : true,
            minChars:1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomCargo}'+'</h3>' +'</a>';
                }
            }
        });

        CmbArea.on('select', function (store,records) {
            //alert(nuevo);
            StorePosicion.setProxy(
            {
                type: 'ajax',
                url: 'posicion/IndexConId/'+records[0].get('IdArea'),
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'
                }
            });

            CmbPosicion.reset();
            StorePosicion.load();
        });
        return Ext.create('Ext.container.Container', {
            layout: 'hbox',
            //padding:'1 0 1 0',
            //defaults :{margin: '0 5 2 0'},
            items: [CmbArea,CmbPosicion]
        });
    },

//FUNCION PARA CREAR COMBRO DE VINCULO FAMILIAR
ComboVinculoFamiliar: function () {

        var StoreVinculoFamiliar = Ext.create('Ext.data.Store', {
            model: 'VinculoFamiliar',
            pageSize: 25,
            proxy: {
                type: 'ajax',
                url: 'VinculoFamiliar/ListAll',
                reader: {
                    type: 'json',
                    root: 'Data'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id: 'CmbVinculoFamiliar',
            fieldLabel: 'Vinculo',
            emptyText: 'SELECCIONE VINCULO',
            name: 'IdVinculo',
            width: '50%',
            margin: '0 5 5 5',
            //flex: 1,
            pageSize: 25,
            store: StoreVinculoFamiliar,
            queryMode: 'remote',
            displayField: 'NomVinculoFamiliar',
            valueField: 'IdVinculo',
            autoSelect: false,
            forceSelection: true,
            allowBlank: false,
            minChars: 1
        });

    },

//FUNCION ACREDITA VINCULO FAMILIAR
ComboAcreditaVinculoFamiliar: function () {

        var StoreAcreditaVinculoFamiliar = Ext.create('Ext.data.Store', {
            model: 'AcreditaVinculoFamiliar',
            pageSize: 100,
            proxy: {
                type: 'ajax',
                url: 'AcreditaVinculoFamiliar/ListAll',
                reader: {
                    type: 'json',
                    root: 'Data'
                }
            }
        });

        return Ext.create('Ext.form.ComboBox', {
            id: 'CmbAcreditaVinculoFamiliar',
            fieldLabel: 'Acr Vinculo',
            emptyText: 'SELECCIONE ACREDITACION VINCULO',
            name: 'idacreditavinculofamiliar',
            flex: 1,
            //margin: '0 5 5 5',
            //flex: 1,
            pageSize: 100,
            store: StoreAcreditaVinculoFamiliar,
            queryMode: 'remote',
            displayField: 'NomAcreditaVinculofamiliar',
            valueField: 'idacreditavinculofamiliar',
            autoSelect: false,
            forceSelection: true,
            allowBlank: false,
            minChars: 1
        });

    },

    ReportWindow    :   function(btn){

        var ancho = Ext.getCmp('rrhh').getWidth();
        var alto = Ext.getCmp('rrhh').getHeight();
        
        Ext.create('Ext.window.Window', {
            title: btn.titulo,
            height: alto,
            width: ancho,
            modal: true,
            layout: 'fit',
            items:[{
                xtype:'panel',
                border:false,
                html:'<iframe class="" src='+btn.src+' width="'+(ancho-10)+'" height="'+(alto-30)+'" frameborder="1"></iframe>'
            }]

        }).show();
    },

    PagarWindow    :   function(btn){

        var Frm =  Ext.create('Ext.form.Panel', {
            id:'FrmFechaPago',
            //frame:true,
            bodyPadding:'5',
            fieldDefaults: {
                msgTarget: 'side',
                labelAlign: 'left',
                labelWidth: 60,
                anchor: '100%'
            },
            items: [{
                xtype: 'datefield',
                name: 'Fecha',
                allowBlank:false,
                fieldLabel: 'Fecha'   
            }],
            buttons: [{
                text: 'Generar',
                handler: function(){
           
                    Ext.MessageBox.show({
                        msg: 'Generando Registros...',
                        progressText: 'Actualizando...',
                        width:300,
                        icon:'ext-mb-download'
                    });
                       
                    var form = this.up('form').getForm();
                    if (form.isValid()) {
                        form.submit({
                            url: btn.url,
                            success: function(form, action) {
                                Ext.getCmp('WFechaPago').close();
                        
                                setTimeout(function(){
                                    Ext.MessageBox.hide();
                                }, 1000); 
                        
                                Ext.Msg.show({
                                    title:'Correcto!!',
                                    msg: action.result.msg,
                                    buttons: Ext.Msg.OK,
                                    icon: Ext.Msg.QUESTION
                                });
                    
                        
                            },
                            failure: function(form, action) {
                                Ext.Msg.show({
                                    title:'Atencion!!',
                                    msg: action.result.msg,
                                    buttons: Ext.Msg.OK,
                                    icon: Ext.Msg.WARNING
                                });
                            }
                        });
                    }
                }
            },{
                text: 'Limpiar',
                handler: function(){
                    this.up('form').getForm().reset();
                }
            }]
        });

        var win = Ext.create('widget.window', {
            id:'WFechaPago',
            title: 'PAGAR CTS',
            closable: true,
            //bodyPadding:'5',
            bodyBorder:false,
            border:false,
            width: 250,
            minWidth: 200,
            height: 100,
            layout:'fit',
            modal: true,
            items: [Frm]
        });

        win.show(); 
    
    }
});